package com.travelsmart.client.control;

import java.util.List;

import com.travelsmart.client.bean.to.FilterInfoHotel;
import com.travelsmart.client.bean.to.FilterPesquisaHotel;
import com.travelsmart.client.bean.to.HotelTO;
import com.travelsmart.client.bean.to.ReservaHotelTO;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
public interface HotelSmartServiceAsync{
	
	public static final HotelSmartServiceAsync service = GWT.create(HotelSmartService.class);
	
	void listaHotel(FilterPesquisaHotel filter, AsyncCallback<List<HotelTO>> callback);
	
	void dadosHotel(FilterInfoHotel to, AsyncCallback<HotelTO> callback);
	
	
	
	public <E> void sortList(List<E> list, boolean asc, String atributo, AsyncCallback<List<E>> callback);


	void updateReserva(ReservaHotelTO contato, AsyncCallback<Void> callback);

	void criarReservaHotel(ReservaHotelTO to,
			AsyncCallback<ReservaHotelTO> callback);

	void listReservas(int posicaoInicial, int nroRegistrosPagina,
			AsyncCallback<List<ReservaHotelTO>> callback);

	void obterReservaHotel(long id, AsyncCallback<ReservaHotelTO> callback);

	/*/# INICIO - EXERC. 1
	
	//FIM - EXERC. 1 #*/
	

}
